home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue29 / s3demo / S3DEMO.ZIP / Scripts.ZIP / JavaScript.txt < prev    next >
Encoding:
Text File  |  1997-11-19  |  29.5 KB  |  644 lines

  1. /*
  2.  * TSyntaxMemoParser Script
  3.  * ------------------------
  4.  *
  5.  * Author  :          David Brock
  6.  * Date    :          October 18 1997
  7.  * Language:          JavaScript
  8.  *
  9.  */
  10.  
  11. #define jt_DEFAULT              0
  12. #define jt_RESERVED             1
  13. #define jt_COMMENT              2
  14. #define jt_COMMENT_STAR         3
  15. #define jt_COMMENT_LINE         4
  16. #define jt_STRING               5
  17. #define jt_STRING_CHAR          6
  18. #define jt_IDENTIFIER           7
  19. #define jt_NUMBER               8
  20. #define jt_SYMBOL               9
  21. #define jt_BUILTINMETHOD        10
  22. #define jt_HEXNUMBER            11
  23.  
  24. #define _LANG_WORDS             20
  25.  
  26. #define jt_ABSTRACT             (_LANG_WORDS + 00)
  27. #define jt_BOOLEAN              (_LANG_WORDS + 01)
  28. #define jt_BREAK                (_LANG_WORDS + 02)
  29. #define jt_BYTE                 (_LANG_WORDS + 03)
  30. #define jt_CASE                 (_LANG_WORDS + 04)
  31. #define jt_CATCH                (_LANG_WORDS + 05)
  32. #define jt_CHAR                 (_LANG_WORDS + 06)
  33. #define jt_CLASS                (_LANG_WORDS + 07)
  34. #define jt_CONST                (_LANG_WORDS + 08)
  35. #define jt_CONTINUE             (_LANG_WORDS + 09)
  36. #define jt_DEFAULT              (_LANG_WORDS + 10)
  37. #define jt_DO                   (_LANG_WORDS + 11)
  38. #define jt_DOUBLE               (_LANG_WORDS + 12)
  39. #define jt_ELSE                 (_LANG_WORDS + 13)
  40. #define jt_EXTENDS              (_LANG_WORDS + 14)
  41. #define jt_FALSE                (_LANG_WORDS + 15)
  42. #define jt_FINAL                (_LANG_WORDS + 16)
  43. #define jt_FINALLY              (_LANG_WORDS + 17)
  44. #define jt_FLOAT                (_LANG_WORDS + 18)
  45. #define jt_FOR                  (_LANG_WORDS + 19)
  46. #define jt_FUNCTION             (_LANG_WORDS + 20)
  47. #define jt_GOTO                 (_LANG_WORDS + 21)
  48. #define jt_IF                   (_LANG_WORDS + 22)
  49. #define jt_IMPLEMENTS           (_LANG_WORDS + 23)
  50. #define jt_IMPORT               (_LANG_WORDS + 24)
  51. #define jt_IN                   (_LANG_WORDS + 25)
  52. #define jt_INSTANCEOF           (_LANG_WORDS + 26)
  53. #define jt_INT                  (_LANG_WORDS + 27)
  54. #define jt_INTERFACE            (_LANG_WORDS + 28)
  55. #define jt_LONG                 (_LANG_WORDS + 29)
  56. #define jt_NATIVE               (_LANG_WORDS + 30)
  57. #define jt_NEW                  (_LANG_WORDS + 31)
  58. #define jt_NULL                 (_LANG_WORDS + 32)
  59. #define jt_PACKAGE              (_LANG_WORDS + 33)
  60. #define jt_PRIVATE              (_LANG_WORDS + 34)
  61. #define jt_PROTECTED            (_LANG_WORDS + 35)
  62. #define jt_PUBLIC               (_LANG_WORDS + 36)
  63. #define jt_RETURN               (_LANG_WORDS + 37)
  64. #define jt_SHORT                (_LANG_WORDS + 38)
  65. #define jt_STATIC               (_LANG_WORDS + 39)
  66. #define jt_SUPER                (_LANG_WORDS + 40)
  67. #define jt_SWITCH               (_LANG_WORDS + 41)
  68. #define jt_SYCHRONIZ            (_LANG_WORDS + 42)
  69. #define jt_THIS                 (_LANG_WORDS + 43)
  70. #define jt_THROW                (_LANG_WORDS + 44)
  71. #define jt_THROWS               (_LANG_WORDS + 45)
  72. #define jt_TRANSIENT            (_LANG_WORDS + 46)
  73. #define jt_TRUE                 (_LANG_WORDS + 47)
  74. #define jt_TRY                  (_LANG_WORDS + 48)
  75. #define jt_VAR                  (_LANG_WORDS + 49)
  76. #define jt_VOID                 (_LANG_WORDS + 50)
  77. #define jt_WHILE                (_LANG_WORDS + 51)
  78. #define jt_WITH                 (_LANG_WORDS + 52)
  79.  
  80. #define _LANG_OPS               _LANG_WORDS  + 60
  81.  
  82. #define jt_COMMA                (_LANG_OPS   + 00)
  83. #define jt_EQUALS               (_LANG_OPS   + 01)
  84. #define jt_AUTOINC              (_LANG_OPS   + 02)
  85. #define jt_AUTODEC              (_LANG_OPS   + 03)
  86. #define jt_AUTOMULT             (_LANG_OPS   + 04)
  87. #define jt_AUTODIV              (_LANG_OPS   + 05)
  88. #define jt_AUTOMOD              (_LANG_OPS   + 06)
  89. #define jt_AUTOSHL              (_LANG_OPS   + 07)
  90. #define jt_AUTOSHR              (_LANG_OPS   + 08)
  91. #define jt_AUTOSHR_SIGNED       (_LANG_OPS   + 09)
  92. #define jt_AUTOAND              (_LANG_OPS   + 10)
  93. #define jt_AUTOXOR              (_LANG_OPS   + 11)
  94. #define jt_AUTOOR               (_LANG_OPS   + 12)
  95. #define jt_CONDITIONAL          (_LANG_OPS   + 13)
  96. #define jt_LOGOR                (_LANG_OPS   + 14)
  97. #define jt_LORAND               (_LANG_OPS   + 15)
  98. #define jt_BITOR                (_LANG_OPS   + 16)
  99. #define jt_BITXOR               (_LANG_OPS   + 17)
  100. #define jt_BITAND               (_LANG_OPS   + 18)
  101. #define jt_EQUALTO              (_LANG_OPS   + 19)
  102. #define jt_NOTEQUALTO           (_LANG_OPS   + 20)
  103. #define jt_LESS                 (_LANG_OPS   + 21)
  104. #define jt_LESSTHANEQ           (_LANG_OPS   + 22)
  105. #define jt_GREATER              (_LANG_OPS   + 23)
  106. #define jt_GREATERTHANEQ        (_LANG_OPS   + 24)
  107. #define jt_SHL                  (_LANG_OPS   + 25)
  108. #define jt_SHR                  (_LANG_OPS   + 26)
  109. #define jt_SHR_SIGNED           (_LANG_OPS   + 27)
  110. #define jt_PLUS                 (_LANG_OPS   + 28)
  111. #define jt_MINUS                (_LANG_OPS   + 29)
  112. #define jt_TIMES                (_LANG_OPS   + 30)
  113. #define jt_DIV                  (_LANG_OPS   + 31)
  114. #define jt_MOD                  (_LANG_OPS   + 32)
  115. #define jt_NOT                  (_LANG_OPS   + 33)
  116. #define jt_NEGATE               (_LANG_OPS   + 34)
  117. #define jt_INCREMENT            (_LANG_OPS   + 35)
  118. #define jt_DECREMENT            (_LANG_OPS   + 36)
  119. #define jt_LBRACKET             (_LANG_OPS   + 37)
  120. #define jt_RBRACKET             (_LANG_OPS   + 39)
  121. #define jt_LSBRACKET            (_LANG_OPS   + 40)
  122. #define jt_RSBRACKET            (_LANG_OPS   + 41)
  123. #define jt_DOT                  (_LANG_OPS   + 42)
  124.  
  125. #define _LANG_METHODS           _LANG_OPS    + 50
  126.  
  127. //
  128. //
  129. //
  130. #define jt_ABS                  (_LANG_METHODS + 00)
  131. #define jt_ACOS                 (_LANG_METHODS + 01)
  132. #define jt_ALERT                (_LANG_METHODS + 02)
  133. #define jt_ANCHOR               (_LANG_METHODS + 03)
  134. #define jt_ASIN                 (_LANG_METHODS + 04)
  135. #define jt_ATAN                 (_LANG_METHODS + 05)
  136. #define jt_BACK                 (_LANG_METHODS + 06)
  137. #define jt_BIG                  (_LANG_METHODS + 07)
  138. #define jt_BLINK                (_LANG_METHODS + 08)
  139. #define jt_BLUR                 (_LANG_METHODS + 09)
  140. #define jt_BOLD                 (_LANG_METHODS + 10)
  141. #define jt_CEIL                 (_LANG_METHODS + 11)
  142. #define jt_CHARAT               (_LANG_METHODS + 12)
  143. #define jt_CLEAR                (_LANG_METHODS + 13)
  144. #define jt_CLEARTIMEOUT         (_LANG_METHODS + 14)
  145. #define jt_CLICK                (_LANG_METHODS + 15)
  146. #define jt_CLOSE                (_LANG_METHODS + 16)
  147. #define jt_CONFIRM              (_LANG_METHODS + 17)
  148. #define jt_COS                  (_LANG_METHODS + 18)
  149. #define jt_ESCAPE               (_LANG_METHODS + 19)
  150. #define jt_EVAL                 (_LANG_METHODS + 20)
  151. #define jt_EXP                  (_LANG_METHODS + 21)
  152. #define jt_FIXED                (_LANG_METHODS + 22)
  153. #define jt_FLOOR                (_LANG_METHODS + 23)
  154. #define jt_FOCUS                (_LANG_METHODS + 24)
  155. #define jt_FONTCOLOR            (_LANG_METHODS + 25)
  156. #define jt_FONTSIZE             (_LANG_METHODS + 26)
  157. #define jt_FORWARD              (_LANG_METHODS + 27)
  158. #define jt_GETDATE              (_LANG_METHODS + 28)
  159. #define jt_GETDAY               (_LANG_METHODS + 29)
  160. #define jt_GETHOURS             (_LANG_METHODS + 30)
  161. #define jt_GETMINUTES           (_LANG_METHODS + 31)
  162. #define jt_GETMONTH             (_LANG_METHODS + 32)
  163. #define jt_GETSECONDS           (_LANG_METHODS + 33)
  164. #define jt_GETTIME              (_LANG_METHODS + 34)
  165. #define jt_GETTIMEZONEOFFSET    (_LANG_METHODS + 35)
  166. #define jt_GETYEAR              (_LANG_METHODS + 36)
  167. #define jt_GO                   (_LANG_METHODS + 37)
  168. #define jt_INDEXOF              (_LANG_METHODS + 38)
  169. #define jt_ISNAN                (_LANG_METHODS + 39)
  170. #define jt_ITALICS              (_LANG_METHODS + 40)
  171. #define jt_LASTINDEXOF          (_LANG_METHODS + 41)
  172. #define jt_LINK                 (_LANG_METHODS + 42)
  173. #define jt_LOG                  (_LANG_METHODS + 43)
  174. #define jt_MAX                  (_LANG_METHODS + 44)
  175. #define jt_MIN                  (_LANG_METHODS + 45)
  176. #define jt_OPEN                 (_LANG_METHODS + 46)
  177. #define jt_PARSE                (_LANG_METHODS + 47)
  178. #define jt_PARSEFLOAT           (_LANG_METHODS + 48)
  179. #define jt_PARSEINT             (_LANG_METHODS + 49)
  180. #define jt_POW                  (_LANG_METHODS + 50)
  181. #define jt_PROMPT               (_LANG_METHODS + 51)
  182. #define jt_RANDOM               (_LANG_METHODS + 52)
  183. #define jt_ROUND                (_LANG_METHODS + 53)
  184. #define jt_SELECT               (_LANG_METHODS + 54)
  185. #define jt_SETDATE              (_LANG_METHODS + 55)
  186. #define jt_SETHOURS             (_LANG_METHODS + 56)
  187. #define jt_SETMINUTES           (_LANG_METHODS + 57)
  188. #define jt_SETMONTH             (_LANG_METHODS + 58)
  189. #define jt_SETSECONDS           (_LANG_METHODS + 59)
  190. #define jt_SETTIMEOUT           (_LANG_METHODS + 60)
  191. #define jt_SETTIME              (_LANG_METHODS + 61)
  192. #define jt_SETYEAR              (_LANG_METHODS + 62)
  193. #define jt_SIN                  (_LANG_METHODS + 63)
  194. #define jt_SMALL                (_LANG_METHODS + 64)
  195. #define jt_SQRT                 (_LANG_METHODS + 65)
  196. #define jt_STRIKE               (_LANG_METHODS + 66)
  197. #define jt_SUB                  (_LANG_METHODS + 67)
  198. #define jt_SUBMIT               (_LANG_METHODS + 68)
  199. #define jt_SUBSTRING            (_LANG_METHODS + 69)
  200. #define jt_SUP                  (_LANG_METHODS + 70)
  201. #define jt_TAN                  (_LANG_METHODS + 71)
  202. #define jt_TOGMTSTRING          (_LANG_METHODS + 72)
  203. #define jt_TOLOCALESTRING       (_LANG_METHODS + 73)
  204. #define jt_TOLOWERCASE          (_LANG_METHODS + 74)
  205. #define jt_TOUPPERCASE          (_LANG_METHODS + 75)
  206. #define jt_UNESCAPE             (_LANG_METHODS + 76)
  207. #define jt_UTC                  (_LANG_METHODS + 77)
  208. #define jt_WRITE                (_LANG_METHODS + 78)
  209. #define jt_WRITELN              (_LANG_METHODS + 79)
  210.  
  211. /*--- jt_WRITELN == 209 ---*/
  212.  
  213.  
  214. #define _non_alpha_                 '[^_A-Za-z0-9]'
  215. #define _all_chars_                 '[\x00-\xFF]'
  216. #define _no_chars_                  '[]'
  217. #define _dont_care_                 _all_chars_
  218. #define _DEFAULT_BACKGROUND         clWhite
  219. #define _DEFAULT_FOREGROUND         clBlack
  220.  
  221. %%language
  222. Name                     = 'JavaScript'
  223. Case                      = __SENSITIVE
  224. Options                   = __DEFAULT_OPTIONS
  225. WordWrapColumn            = _EDGE
  226. Gutter                    = _DEFAULT_GUTTER
  227. Anchor                    = _DEFAULT_START_ANCHOR
  228. ExampleText               = '/* Javascript syntax highlighting */\n\
  229.                             \var worldString="Hello, world"\n\
  230.                             \document.write(worldString.small())\n\
  231.                             \document.write("<P>" + worldString.big())\n\
  232.                             \document.write("<P>" + worldString.fontsize(7))\n'
  233.                             
  234. EditableStyles              ('Reserved word', jt_RESERVED),
  235.                             ('Comment',       jt_COMMENT),
  236.                             ('Identifier',    jt_IDENTIFIER),
  237.                             ('Function',      jt_BUILTINMETHOD),
  238.                             ('String',        jt_STRING),
  239.                             ('Number',        jt_NUMBER),
  240.                             ('Symbols',       jt_SYMBOL),
  241.                             ('Default',       jt_DEFAULT)
  242.  
  243.  
  244. %%words
  245. 'abstract'                  _non_alpha_       jt_ABSTRACT
  246. 'boolean'                   _non_alpha_       jt_BOOLEAN
  247. 'break'                     _non_alpha_       jt_BREAK
  248. 'byte'                      _non_alpha_       jt_BYTE
  249. 'case'                      _non_alpha_       jt_CASE
  250. 'catch'                     _non_alpha_       jt_CATCH
  251. 'char'                      _non_alpha_       jt_CHAR
  252. 'class'                     _non_alpha_       jt_CLASS
  253. 'const'                     _non_alpha_       jt_CONST
  254. 'continue'                  _non_alpha_       jt_CONTINUE
  255. 'default'                   _non_alpha_       jt_DEFAULT
  256. 'do'                        _non_alpha_       jt_DO
  257. 'double'                    _non_alpha_       jt_DOUBLE
  258. 'else'                      _non_alpha_       jt_ELSE
  259. 'extends'                   _non_alpha_       jt_EXTENDS
  260. 'false'                     _non_alpha_       jt_FALSE
  261. 'final'                     _non_alpha_       jt_FINAL
  262. 'finally'                   _non_alpha_       jt_FINALLY
  263. 'float'                     _non_alpha_       jt_FLOAT
  264. 'for'                       _non_alpha_       jt_FOR
  265. 'function'                  _non_alpha_       jt_FUNCTION
  266. 'goto'                      _non_alpha_       jt_GOTO
  267. 'if'                        _non_alpha_       jt_IF
  268. 'implements'                _non_alpha_       jt_IMPLEMENTS
  269. 'import'                    _non_alpha_       jt_IMPORT
  270. 'in'                        _non_alpha_       jt_IN
  271. 'instanceof'                _non_alpha_       jt_INSTANCEOF
  272. 'int'                       _non_alpha_       jt_INT
  273. 'interface'                 _non_alpha_       jt_INTERFACE
  274. 'long'                      _non_alpha_       jt_LONG
  275. 'native'                    _non_alpha_       jt_NATIVE
  276. 'new'                       _non_alpha_       jt_NEW
  277. 'null'                      _non_alpha_       jt_NULL
  278. 'package'                   _non_alpha_       jt_PACKAGE
  279. 'private'                   _non_alpha_       jt_PRIVATE
  280. 'protected'                 _non_alpha_       jt_PROTECTED
  281. 'public'                    _non_alpha_       jt_PUBLIC
  282. 'return'                    _non_alpha_       jt_RETURN
  283. 'short'                     _non_alpha_       jt_SHORT
  284. 'static'                    _non_alpha_       jt_STATIC
  285. 'super'                     _non_alpha_       jt_SUPER
  286. 'switch'                    _non_alpha_       jt_SWITCH
  287. 'synchroniz'                _non_alpha_       jt_SYCHRONIZ
  288. 'this'                      _non_alpha_       jt_THIS
  289. 'throw'                     _non_alpha_       jt_THROW
  290. 'throws'                    _non_alpha_       jt_THROWS
  291. 'transient'                 _non_alpha_       jt_TRANSIENT
  292. 'true'                      _non_alpha_       jt_TRUE
  293. 'try'                       _non_alpha_       jt_TRY
  294. 'var'                       _non_alpha_       jt_VAR
  295. 'void'                      _non_alpha_       jt_VOID
  296. 'while'                     _non_alpha_       jt_WHILE
  297. 'with'                      _non_alpha_       jt_WITH
  298. //
  299. //
  300. //
  301. 'abs'                       _non_alpha_       jt_ABS
  302. 'acos'                      _non_alpha_       jt_ACOS
  303. 'alert'                     _non_alpha_       jt_ALERT
  304. 'anchor'                    _non_alpha_       jt_ANCHOR
  305. 'asin'                      _non_alpha_       jt_ASIN
  306. 'atan'                      _non_alpha_       jt_ATAN
  307. 'back'                      _non_alpha_       jt_BACK
  308. 'big'                       _non_alpha_       jt_BIG
  309. 'blink'                     _non_alpha_       jt_BLINK
  310. 'blur'                      _non_alpha_       jt_BLUR
  311. 'bold'                      _non_alpha_       jt_BOLD
  312. 'ceil'                      _non_alpha_       jt_CEIL
  313. 'charAt'                    _non_alpha_       jt_CHARAT
  314. 'clear'                     _non_alpha_       jt_CLEAR
  315. 'clearTimeout'              _non_alpha_       jt_CLEARTIMEOUT
  316. 'click'                     _non_alpha_       jt_CLICK
  317. 'close'                     _non_alpha_       jt_CLOSE
  318. 'confirm'                   _non_alpha_       jt_CONFIRM
  319. 'cos'                       _non_alpha_       jt_COS
  320. 'escape'                    _non_alpha_       jt_ESCAPE
  321. 'eval'                      _non_alpha_       jt_EVAL
  322. 'exp'                       _non_alpha_       jt_EXP
  323. 'fixed'                     _non_alpha_       jt_FIXED
  324. 'floor'                     _non_alpha_       jt_FLOOR
  325. 'focus'                     _non_alpha_       jt_FOCUS
  326. 'fontcolor'                 _non_alpha_       jt_FONTCOLOR
  327. 'fontsize'                  _non_alpha_       jt_FONTSIZE
  328. 'forward'                   _non_alpha_       jt_FORWARD
  329. 'getDate'                   _non_alpha_       jt_GETDATE
  330. 'getDay'                    _non_alpha_       jt_GETDAY
  331. 'getHours'                  _non_alpha_       jt_GETHOURS
  332. 'getMinutes'                _non_alpha_       jt_GETMINUTES
  333. 'getMonth'                  _non_alpha_       jt_GETMONTH
  334. 'getSeconds'                _non_alpha_       jt_GETSECONDS
  335. 'getTime'                   _non_alpha_       jt_GETTIME
  336. 'getTimezoneOffset'         _non_alpha_       jt_GETTIMEZONEOFFSET
  337. 'getYear'                   _non_alpha_       jt_GETYEAR
  338. 'go'                        _non_alpha_       jt_GO
  339. 'indexOf'                   _non_alpha_       jt_INDEXOF
  340. 'isNaN'                     _non_alpha_       jt_ISNAN
  341. 'italics'                   _non_alpha_       jt_ITALICS
  342. 'lastIndexOf'               _non_alpha_       jt_LASTINDEXOF
  343. 'link'                      _non_alpha_       jt_LINK
  344. 'log'                       _non_alpha_       jt_LOG
  345. 'max'                       _non_alpha_       jt_MAX
  346. 'min'                       _non_alpha_       jt_MIN
  347. 'open'                      _non_alpha_       jt_OPEN
  348. 'parse'                     _non_alpha_       jt_PARSE
  349. 'parseFloat'                _non_alpha_       jt_PARSEFLOAT
  350. 'parseInt'                  _non_alpha_       jt_PARSEINT
  351. 'pow'                       _non_alpha_       jt_POW
  352. 'prompt'                    _non_alpha_       jt_PROMPT
  353. 'random'                    _non_alpha_       jt_RANDOM
  354. 'round'                     _non_alpha_       jt_ROUND
  355. 'select'                    _non_alpha_       jt_SELECT
  356. 'setDate'                   _non_alpha_       jt_SETDATE
  357. 'setHours'                  _non_alpha_       jt_SETHOURS
  358. 'setMinutes'                _non_alpha_       jt_SETMINUTES
  359. 'setMonth'                  _non_alpha_       jt_SETMONTH
  360. 'setSeconds'                _non_alpha_       jt_SETSECONDS
  361. 'setTimeout'                _non_alpha_       jt_SETTIMEOUT
  362. 'setTime'                   _non_alpha_       jt_SETTIME
  363. 'setYear'                   _non_alpha_       jt_SETYEAR
  364. 'sin'                       _non_alpha_       jt_SIN
  365. 'small'                     _non_alpha_       jt_SMALL
  366. 'sqrt'                      _non_alpha_       jt_SQRT
  367. 'strike'                    _non_alpha_       jt_STRIKE
  368. 'sub'                       _non_alpha_       jt_SUB
  369. 'submit'                    _non_alpha_       jt_SUBMIT
  370. 'substring'                 _non_alpha_       jt_SUBSTRING
  371. 'sup'                       _non_alpha_       jt_SUP
  372. 'tan'                       _non_alpha_       jt_TAN
  373. 'toGMTString'               _non_alpha_       jt_TOGMTSTRING
  374. 'toLocaleString'            _non_alpha_       jt_TOLOCALESTRING
  375. 'toLowerCase'               _non_alpha_       jt_TOLOWERCASE
  376. 'toUpperCase'               _non_alpha_       jt_TOUPPERCASE
  377. 'unescape'                  _non_alpha_       jt_UNESCAPE
  378. 'UTC'                       _non_alpha_       jt_UTC
  379. 'write'                     _non_alpha_       jt_WRITE
  380. 'writeln'                   _non_alpha_       jt_WRITELN
  381.  
  382. ','                         _dont_care_       jt_COMMA
  383. '='                         _dont_care_       jt_EQUALS
  384. '+='                        _dont_care_       jt_AUTOINC
  385. '-='                        _dont_care_       jt_AUTODEC
  386. '*='                        _dont_care_       jt_AUTOMULT
  387. '/='                        _dont_care_       jt_AUTODIV
  388. '%='                        _dont_care_       jt_AUTOMOD
  389. '<<='                       _dont_care_       jt_AUTOSHL
  390. '>>='                       _dont_care_       jt_AUTOSHR
  391. '>>>='                      _dont_care_       jt_AUTOSHR_SIGNED
  392. '&='                        _dont_care_       jt_AUTOAND
  393. '^='                        _dont_care_       jt_AUTOXOR
  394. '|='                        _dont_care_       jt_AUTOOR
  395. '?:'                        _dont_care_       jt_CONDITIONAL
  396. '||'                        _dont_care_       jt_LOGOR
  397. '&&'                        _dont_care_       jt_LORAND
  398. '|'                         _dont_care_       jt_BITOR
  399. '^'                         _dont_care_       jt_BITXOR
  400. '&'                         _dont_care_       jt_BITAND
  401. '=='                        _dont_care_       jt_EQUALTO
  402. '!='                        _dont_care_       jt_NOTEQUALTO
  403. '<'                         _dont_care_       jt_LESS
  404. '<='                        _dont_care_       jt_LESSTHANEQ
  405. '>'                         _dont_care_       jt_GREATER
  406. '>='                        _dont_care_       jt_GREATERTHANEQ
  407. '<<'                        _dont_care_       jt_SHL
  408. '>>'                        _dont_care_       jt_SHR
  409. '>>>'                       _dont_care_       jt_SHR_SIGNED
  410. '+'                         _dont_care_       jt_PLUS
  411. '-'                         _dont_care_       jt_MINUS
  412. '*'                         _dont_care_       jt_TIMES
  413. '/'                         _dont_care_       jt_DIV
  414. '%'                         _dont_care_       jt_MOD
  415. '!'                         _dont_care_       jt_NOT
  416. '~'                         _dont_care_       jt_NEGATE
  417. '++'                        _dont_care_       jt_INCREMENT
  418. '--'                        _dont_care_       jt_DECREMENT
  419. '('                         _dont_care_       jt_LBRACKET
  420. ')'                         _dont_care_       jt_RBRACKET
  421. '['                         _dont_care_       jt_LSBRACKET
  422. ']'                         _dont_care_       jt_RSBRACKET
  423. '.'                         _dont_care_       jt_DOT
  424. '0'                         '[xX]'            jt_HEXNUMBER
  425.  
  426. '\/*'                       _dont_care_       jt_COMMENT_STAR
  427. '\/\/'                      _dont_care_       jt_COMMENT_LINE
  428.  
  429. %%handler
  430. jt_COMMENT_LINE         '[^\n]'?                    '\n'           _discard_
  431. jt_COMMENT_STAR         _all_chars_?                '*\/'          _use_
  432. jt_HEXNUMBER            '[xX0-9A-Fa-f]'             '[^0-9a-fA-F]' _discard_
  433.  
  434. %%tokens
  435. jt_STRING               __STD_C_STRING
  436. jt_STRING_CHAR          __STD_C_CHAR
  437. jt_IDENTIFIER           __STD_IDENTIFIER
  438. jt_NUMBER               __STD_NUMBER_OR_FP
  439.  
  440. %%effects
  441. jt_DEFAULT              []                          _DEFAULT_FOREGROUND         _DEFAULT_BACKGROUND
  442. jt_IDENTIFIER           []                          _DEFAULT_FOREGROUND         _DEFAULT_BACKGROUND
  443. jt_STRING               [fsItalic]                  _DEFAULT_FOREGROUND         _DEFAULT_BACKGROUND
  444. jt_COMMENT              [fsItalic]                  clBlue                      _DEFAULT_BACKGROUND
  445. jt_RESERVED             [fsBold]                    _DEFAULT_FOREGROUND         _DEFAULT_BACKGROUND
  446. jt_BUILTINMETHOD        [fsBold]                    _DEFAULT_FOREGROUND         _DEFAULT_BACKGROUND
  447. jt_NUMBER               []                          clRed                       _DEFAULT_BACKGROUND
  448. jt_SYMBOL               []                          clGreen                     _DEFAULT_BACKGROUND
  449.  
  450. %%map
  451. jt_RESERVED             jt_RESERVED
  452. jt_STRING               jt_STRING
  453. jt_COMMENT              jt_COMMENT
  454. jt_IDENTIFIER           jt_IDENTIFIER
  455. jt_COMMENT_LINE         jt_COMMENT
  456. jt_COMMENT_STAR         jt_COMMENT
  457. jt_STRING               jt_STRING
  458. jt_STRING_CHAR          jt_STRING
  459. jt_BUILTINMETHOD        jt_BUILTINMETHOD
  460. jt_HEXNUMBER            jt_NUMBER
  461. jt_NUMBER               jt_NUMBER
  462. //
  463. //
  464. //
  465. jt_ABSTRACT             jt_RESERVED
  466. jt_BOOLEAN              jt_RESERVED
  467. jt_BREAK                jt_RESERVED
  468. jt_BYTE                 jt_RESERVED
  469. jt_CASE                 jt_RESERVED
  470. jt_CATCH                jt_RESERVED
  471. jt_CHAR                 jt_RESERVED
  472. jt_CLASS                jt_RESERVED
  473. jt_CONST                jt_RESERVED
  474. jt_CONTINUE             jt_RESERVED
  475. jt_DEFAULT              jt_RESERVED
  476. jt_DO                   jt_RESERVED
  477. jt_DOUBLE               jt_RESERVED
  478. jt_ELSE                 jt_RESERVED
  479. jt_EXTENDS              jt_RESERVED
  480. jt_FALSE                jt_RESERVED
  481. jt_FINAL                jt_RESERVED
  482. jt_FINALLY              jt_RESERVED
  483. jt_FLOAT                jt_RESERVED
  484. jt_FOR                  jt_RESERVED
  485. jt_FUNCTION             jt_RESERVED
  486. jt_GOTO                 jt_RESERVED
  487. jt_IF                   jt_RESERVED
  488. jt_IMPLEMENTS           jt_RESERVED
  489. jt_IMPORT               jt_RESERVED
  490. jt_IN                   jt_RESERVED
  491. jt_INSTANCEOF           jt_RESERVED
  492. jt_INT                  jt_RESERVED
  493. jt_INTERFACE            jt_RESERVED
  494. jt_LONG                 jt_RESERVED
  495. jt_NATIVE               jt_RESERVED
  496. jt_NEW                  jt_RESERVED
  497. jt_NULL                 jt_RESERVED
  498. jt_PACKAGE              jt_RESERVED
  499. jt_PRIVATE              jt_RESERVED
  500. jt_PROTECTED            jt_RESERVED
  501. jt_PUBLIC               jt_RESERVED
  502. jt_RETURN               jt_RESERVED
  503. jt_SHORT                jt_RESERVED
  504. jt_STATIC               jt_RESERVED
  505. jt_SUPER                jt_RESERVED
  506. jt_SWITCH               jt_RESERVED
  507. jt_SYCHRONIZ            jt_RESERVED
  508. jt_THIS                 jt_RESERVED
  509. jt_THROW                jt_RESERVED
  510. jt_THROWS               jt_RESERVED
  511. jt_TRANSIENT            jt_RESERVED
  512. jt_TRUE                 jt_RESERVED
  513. jt_TRY                  jt_RESERVED
  514. jt_VAR                  jt_RESERVED
  515. jt_VOID                 jt_RESERVED
  516. jt_WHILE                jt_RESERVED
  517. jt_WITH                 jt_RESERVED
  518.  
  519. jt_COMMA                jt_SYMBOL
  520. jt_EQUALS               jt_SYMBOL
  521. jt_AUTOINC              jt_SYMBOL
  522. jt_AUTODEC              jt_SYMBOL
  523. jt_AUTOMULT             jt_SYMBOL
  524. jt_AUTODIV              jt_SYMBOL
  525. jt_AUTOMOD              jt_SYMBOL
  526. jt_AUTOSHL              jt_SYMBOL
  527. jt_AUTOSHR              jt_SYMBOL
  528. jt_AUTOSHR_SIGNED       jt_SYMBOL
  529. jt_AUTOAND              jt_SYMBOL
  530. jt_AUTOXOR              jt_SYMBOL
  531. jt_AUTOOR               jt_SYMBOL
  532. jt_CONDITIONAL          jt_SYMBOL
  533. jt_LOGOR                jt_SYMBOL
  534. jt_LORAND               jt_SYMBOL
  535. jt_BITOR                jt_SYMBOL
  536. jt_BITXOR               jt_SYMBOL
  537. jt_BITAND               jt_SYMBOL
  538. jt_EQUALTO              jt_SYMBOL
  539. jt_NOTEQUALTO           jt_SYMBOL
  540. jt_LESS                 jt_SYMBOL
  541. jt_LESSTHANEQ           jt_SYMBOL
  542. jt_GREATER              jt_SYMBOL
  543. jt_GREATERTHANEQ        jt_SYMBOL
  544. jt_SHL                  jt_SYMBOL
  545. jt_SHR                  jt_SYMBOL
  546. jt_SHR_SIGNED           jt_SYMBOL
  547. jt_PLUS                 jt_SYMBOL
  548. jt_MINUS                jt_SYMBOL
  549. jt_TIMES                jt_SYMBOL
  550. jt_DIV                  jt_SYMBOL
  551. jt_MOD                  jt_SYMBOL
  552. jt_NOT                  jt_SYMBOL
  553. jt_NEGATE               jt_SYMBOL
  554. jt_INCREMENT            jt_SYMBOL
  555. jt_DECREMENT            jt_SYMBOL
  556. jt_LBRACKET             jt_SYMBOL
  557. jt_RBRACKET             jt_SYMBOL
  558. jt_LSBRACKET            jt_SYMBOL
  559. jt_RSBRACKET            jt_SYMBOL
  560. jt_DOT                  jt_SYMBOL
  561.  
  562.  
  563. jt_ABS                  jt_BUILTINMETHOD
  564. jt_ACOS                 jt_BUILTINMETHOD
  565. jt_ALERT                jt_BUILTINMETHOD
  566. jt_ANCHOR               jt_BUILTINMETHOD
  567. jt_ASIN                 jt_BUILTINMETHOD
  568. jt_ATAN                 jt_BUILTINMETHOD
  569. jt_BACK                 jt_BUILTINMETHOD
  570. jt_BIG                  jt_BUILTINMETHOD
  571. jt_BLINK                jt_BUILTINMETHOD
  572. jt_BLUR                 jt_BUILTINMETHOD
  573. jt_BOLD                 jt_BUILTINMETHOD
  574. jt_CEIL                 jt_BUILTINMETHOD
  575. jt_CHARAT               jt_BUILTINMETHOD
  576. jt_CLEAR                jt_BUILTINMETHOD
  577. jt_CLEARTIMEOUT         jt_BUILTINMETHOD
  578. jt_CLICK                jt_BUILTINMETHOD
  579. jt_CLOSE                jt_BUILTINMETHOD
  580. jt_CONFIRM              jt_BUILTINMETHOD
  581. jt_COS                  jt_BUILTINMETHOD
  582. jt_ESCAPE               jt_BUILTINMETHOD
  583. jt_EVAL                 jt_BUILTINMETHOD
  584. jt_EXP                  jt_BUILTINMETHOD
  585. jt_FIXED                jt_BUILTINMETHOD
  586. jt_FLOOR                jt_BUILTINMETHOD
  587. jt_FOCUS                jt_BUILTINMETHOD
  588. jt_FONTCOLOR            jt_BUILTINMETHOD
  589. jt_FONTSIZE             jt_BUILTINMETHOD
  590. jt_FORWARD              jt_BUILTINMETHOD
  591. jt_GETDATE              jt_BUILTINMETHOD
  592. jt_GETDAY               jt_BUILTINMETHOD
  593. jt_GETHOURS             jt_BUILTINMETHOD
  594. jt_GETMINUTES           jt_BUILTINMETHOD
  595. jt_GETMONTH             jt_BUILTINMETHOD
  596. jt_GETSECONDS           jt_BUILTINMETHOD
  597. jt_GETTIME              jt_BUILTINMETHOD
  598. jt_GETTIMEZONEOFFSET    jt_BUILTINMETHOD
  599. jt_GETYEAR              jt_BUILTINMETHOD
  600. jt_GO                   jt_BUILTINMETHOD
  601. jt_INDEXOF              jt_BUILTINMETHOD
  602. jt_ISNAN                jt_BUILTINMETHOD
  603. jt_ITALICS              jt_BUILTINMETHOD
  604. jt_LASTINDEXOF          jt_BUILTINMETHOD
  605. jt_LINK                 jt_BUILTINMETHOD
  606. jt_LOG                  jt_BUILTINMETHOD
  607. jt_MAX                  jt_BUILTINMETHOD
  608. jt_MIN                  jt_BUILTINMETHOD
  609. jt_OPEN                 jt_BUILTINMETHOD
  610. jt_PARSE                jt_BUILTINMETHOD
  611. jt_PARSEFLOAT           jt_BUILTINMETHOD
  612. jt_PARSEINT             jt_BUILTINMETHOD
  613. jt_POW                  jt_BUILTINMETHOD
  614. jt_PROMPT               jt_BUILTINMETHOD
  615. jt_RANDOM               jt_BUILTINMETHOD
  616. jt_ROUND                jt_BUILTINMETHOD
  617. jt_SELECT               jt_BUILTINMETHOD
  618. jt_SETDATE              jt_BUILTINMETHOD
  619. jt_SETHOURS             jt_BUILTINMETHOD
  620. jt_SETMINUTES           jt_BUILTINMETHOD
  621. jt_SETMONTH             jt_BUILTINMETHOD
  622. jt_SETSECONDS           jt_BUILTINMETHOD
  623. jt_SETTIMEOUT           jt_BUILTINMETHOD
  624. jt_SETTIME              jt_BUILTINMETHOD
  625. jt_SETYEAR              jt_BUILTINMETHOD
  626. jt_SIN                  jt_BUILTINMETHOD
  627. jt_SMALL                jt_BUILTINMETHOD
  628. jt_SQRT                 jt_BUILTINMETHOD
  629. jt_STRIKE               jt_BUILTINMETHOD
  630. jt_SUB                  jt_BUILTINMETHOD
  631. jt_SUBMIT               jt_BUILTINMETHOD
  632. jt_SUBSTRING            jt_BUILTINMETHOD
  633. jt_SUP                  jt_BUILTINMETHOD
  634. jt_TAN                  jt_BUILTINMETHOD
  635. jt_TOGMTSTRING          jt_BUILTINMETHOD
  636. jt_TOLOCALESTRING       jt_BUILTINMETHOD
  637. jt_TOLOWERCASE          jt_BUILTINMETHOD
  638. jt_TOUPPERCASE          jt_BUILTINMETHOD
  639. jt_UNESCAPE             jt_BUILTINMETHOD
  640. jt_UTC                  jt_BUILTINMETHOD
  641. jt_WRITE                jt_BUILTINMETHOD
  642. jt_WRITELN              jt_BUILTINMETHOD
  643.  
  644.